문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 AMD ZEN 마이크로아키텍처 (문단 편집) ==== 로드/스토어 유닛 ==== 정수부에 포함된 메모리 액세스를 위한 메모리 어드레스를 계산하는 2개의 AGU(Adress Generation Unit)와 그에 연계된 2개의 로드/스토어 유닛을 통해 메모리 로드/스토어 명령을 처리하며 클럭당 2개의 로드 명령어를 동시에 실행, 혹은 스토어 명령어를 동시에 실행할 수 있다. 해당 유닛은 정수부에 소속되지만, 실수 유닛에 필요한 메모리 내용을 읽기/쓰기 하는 역할도 하므로 2개의 유닛이 클럭당 2개의 128-bit 값을 메모리로부터 읽을 수 있으며 쓸 때에는 1개의 유닛이 1개의 128-bit값을 쓸 수 있다. 로드/스토어 유닛의 데이터폭 크기가 굳이 128-bit인 이유는 실수 벡터 연산을 지원하는 4개의 실수 유닛의 처리 폭 자체가 SSE 계열 명령어가 사용하는 XMM 레지스터의 데이터폭 128-bit로 제약되기 때문이다. 해당 부분을 하스웰 이후의 인텔 마이크로아키텍처와 비교하면 인텔의 경우 ZEN과 유사하게 2개의 로드+스토어 유닛을 가지고 있으나 그에 더하여 상황에 따라 제한적으로 사용할 수 있는 스토어 유닛 2개가 더 추가되어 ZEN의 2개 구조와 다른 2+1+1개 구조를 가진다. 즉 메모리 로드/스토어 명령어 처리에 있어서는 ZEN 대비 상당한 우위가 예상된다. 그에 더해 하스웰 이후부터의 인텔의 실수 벡터 연산 유닛은 AVX/AVX2 명령어 레지스터폭에 맞게 유닛당 256-bit까지 증가하기 때문에 2개의 로드&스토어 유닛이 각각 256-bit의 메모리 데이터를 로드하여 클럭당 총 512bit를 레지스터로 로드할 수 있다. 이는 ZEN 대비 2배의 입출력 대역폭이다. 다만 메모리 입출력 대역폭이 2배라고 해서 전체 연산속도가 2배는 아닌 것이 기본 레지스터폭이 256-bit인 AVX 계열 명령어 처리에서 조차도 메모리-메모리간 연산에 비해 레지스터-레지스터간 연산이 비율이 높아질 경우 실제 메모리 입출력 빈도는 그만큼 낮아지게 된다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기